package br.academia.negocio;

import static br.academia.util.Validador.isEmpty;

import org.hibernate.HibernateException;

import br.academia.arq.dao.UsuarioDAO;
import br.academia.arq.erros.DAOException;
import br.academia.arq.erros.NegocioException;
import br.academia.dominio.Usuario;

/**
 * Fornece alguns métodos de validação de Usuários
 *
 */
public class UsuarioHelper {
	protected static void validarLogin(UsuarioDAO dao, Usuario obj) throws HibernateException, DAOException, NegocioException{
		Usuario usuario = dao.findUsuarioByLogin(obj.getLogin());
		String erro = "";

		if(!isEmpty(usuario) && usuario.getId() != obj.getId()){
			erro += "Login";
		}
		
		if(!isEmpty(erro)){
			throw new NegocioException(erro + ": não disponível.");
		}
	}
}
